/**
 * @(#) IBaseQuery.java
 */

package cn.ilikes.tools.nosql.jpa.springs;

import java.util.List;
import java.util.Map;
import java.util.Properties;

import cn.ilikes.tools.nosql.jpa.query.pages.PageEntitys;

public interface IBaseQuery {

	public <T> List<T> findByHSQL(String HSQL, int... rowsAndSize) throws SpringErrorException;

	public <T> List<T> findByHSQL(String HSQL, Map<String, Object> values, int... rowsAndSize) throws SpringErrorException;

	public <T> List<T> findByQName(String QName, int... rowsAndSize) throws SpringErrorException;

	public <T> List<T> findByQName(String QName, Map<String, Object> values, int... rowsAndSize) throws SpringErrorException;

	public <T> T findSingleByQName(String QName, Map<String, Object> values) throws SpringErrorException;

	public <T> T findSingleByHSQL(String HSQL, Map<String, Object> values) throws SpringErrorException;

	public PageEntitys findPageByHSQL(String HSQL, Map<String, Object> values, Properties properties, int size) throws SpringErrorException;
}
